.menu-hidden {
    display: none;
}

.menu {
    position            : absolute;
    z-index             : 2;
    padding             : 0;
    
    font-size           : 14px;
    
    list-style          : none;
    
    color               : #222;
    
    background          : rgb(255, 255, 255);
    background          : rgba(255, 255, 255, 0.9);
    
    border-color        : rgb(49, 123, 249);
    border-color        : rgba(49, 123, 249, .40);
    border-style        : solid;
    border-width        : 1px;
    border-radius       : 5px;
    
    -webkit-user-select : none;
    -moz-user-select    : none;
    -ms-user-select     : none;
    -o-user-select      : none;
    user-select         : none;
}

.menu-button {
    background: white;
    border: 0;
}

.menu-item {
    position: relative;
    padding: 3px 20px;
    white-space: pre;
}

.menu-item::after {
    content: attr(data-key);
    float: right;
}

.menu-item:hover {
    background-color: #e3f2ff;
}

.menu-item > .menu {
    top: 0;
    left: 100%;
    display: none;
}

.menu-item:hover > .menu {
    display: block;
}

.menu-submenu > label::after {
    display: block;
    float: right;
    width: 0;
    height: 0;
    margin-top: 3px;
    margin-right: -10px;
    border-color: transparent;
    border-left-color: rgb(49, 123, 249);
    border-style: solid;
    border-width: 5px 0 5px 5px;
    content: " ";
}
